25.05 테크니컬 라이팅

개요

최근 토스에서 글을 쓰는 가이드 사이트를 찾게 됐다.[1]
안 그래도 글을 어떻게 써야 하나, 정리를 어떻게 해야 하나 고민을 하고 있었는데 조금 생각 포인트들을 구체화하는데 도움을 주는 것 같다.

최근 고민

내 기술 정리의 문서는 결국 크게 개념과 실전으로 나뉜다.
개념, 문서 정리에 대한 내용은 무조건 knowledge 쪽에 담고, 직접 무언가를 해보는 행위가 들어간다면 무조건 topic에 넣는 식이다.

TOPIC 디렉토리 문제

내 글이 가지는 문제점 중 하나가 개념 정리글은 너무 추상적인 형태로 머무른다는 것이다.
기술의 원리와 작동 방식을 설명하는데 있어 실습이 꼭 필요한 것은 아니지만, 실제로 보이는 자료와 예시가 함께 할 때 더 잘 기억되지 않나 싶다.

두번째로, TOPIC 쪽은 정말 너무 정리가 안 돼있다.
애초에 정리가 애매한 문서들을 박아넣으려고 만든 공간이긴 하지만, 막상 그렇게 되니 내가 직접 찾는 것도 쉽지 않는 상황이 되어가고 있다.
여기에 어떻게 정리할지 애매하다는 그런 압박감이 오히려 토픽을 늘리는 것을 꺼려지게 만든다.

혹시 내가 실습을 하는 방식에 문제가 있는 것은 아닐까?
실습을 할 때, 하나의 목적을 가지고 시작하긴 하지만 하다보면 계속 다른 부분까지 깊게 파고드는 구석이 있다.
트러블 슈팅으로 시작했는데 막상 보니 기술 원리를 파고 있다던가..
실습으로 시작했는데 중간에 막혀서 트러블 슈팅을 하고 있다던가..
목표를 명확하게 한 뒤에 시작한다고는 하지만, 이 목표가 정말 내 글을 전부 담을 수 있도록 내가 진행하지는 않는 것 같다는 게 하나의 문제라는 것이다.
이것이 문제라면, 이 문제의 원인은 두 가지 정도로 생각할 수 있다.

KNOWLEDGE 디렉토리 문제

image.png
현재 KNOWLEDGE 디렉토리 구조에 대해선 사실 굉장히 만족 중이다.
그러나 조금 방식의 변화를 가져야겠다고 생각했던 시점은 Istio 1기 - Istio Hands-on 스터디를 진행할 때.
이스티오라는 툴을 정리할 때 가급적 하나의 문서로 정리하고 싶었지만 막상 해보니 내용이 너무 방대해서 그렇게 하는 것이 오히려 비효율적이라는 판단이 섰다.
image.png
그래서 쿠버네티스 마냥 하위 디렉토리를 두는 것을 꺼리지 않는 것으로 간단하게 전략을 수정했다.
image.png
그럼에도 아직 고민 지점은 이 부분이다.
각 기술끼리 연관되는 지식은 어떻게 위치시켜야 하는가?
아르고 롤아웃과 이스티오 연계는 현재 아르고 롤아웃 하위에 위치한다.

이 부분은 내가 처음 문서를 정리할 때부터 있었던 고질적인 이슈와도 연관이 된다.
가령 IaaS, PaaS 같은 것들을 각각의 문서로 정리한다면 이걸 비교하는 문서는 어디에 있어야 하는가?
나는 이때 이 정도 개념들의 정리는 어차피 한 문서로 끝내버릴 수 있다고 결론지었다.

그런데 위 사례처럼 아르고 롤아웃, 이스티오는 한 문서로 엮을 만한 사이즈를 가지고 있지 않다.
위 문서는 다음의 두 가지 고민 지점을 내게 안겨준다.

애매한 목적의 글

기본 디렉토리를 나누는 기준은 단순 지식이냐, 행동이 들어가는가이다.
그런데 사실 이렇게 분류하기에 너무 애매한 목적을 가지는 노트들이 있다.
어떻게든 한쪽 디렉토리로 넣으려고 하면 목적이 흐려지는 글들이다.

문제 분석

노트 분류 목적

왜 처음에 이렇게 글을 나누었는지도 다시금 고민해본다.
기본적으로는 내 지식 체계를 정리하고 싶었다.
그리고 이를 토대로 나중에 언제라도 편하게 다시 글을 읽을 수 있게 하는 것이 주목표이다.
갑자기 쿠버 어떤 리소스를 작성하는 법이 기억이 나지 않는다던가, 프롬쿼리 작성법을 알고 싶다던가.
이걸 정리하는 글에 실습하며 담은 내용이 들어가면 너무 장황해지면 다시 글을 흡수하는데 문제가 생긴다.
그래서 실습과 지식을 나누게 됐다.

원인 정의

그런데 점점 글을 쓰다보니 실습 내용 자체가 중요한 것 같은 지식도 있고, 단일 지식이라 하기엔 애매한 글도 있더라는 것.
이런 중요하다 할 만한 글들이 전부 토픽에 때려박히면 나중에 꺼내기가 어렵다.

그렇다고 실습 내용을 지식 디렉에 넣는 것은 역시 문제가 있다.
토픽 중 지식과 긴밀한 결합을 하는 글을 식별하는 것이 핵심 관건인 것이다.

여기에 애매한 토픽들 간 분류가 이뤄지면 가시성이 향상조금 더 필요해보인다.
문제가 생기는 노트는 무엇인가?

원하는 목표

지식과 토픽은 역시 디렉토리로 명확하게 분류되는 편이 좋다.
지식쪽 노트를 보는데 필요한 토픽이 가시적으로 보이면 좋겠다.
디자인 관련 글이 명확하게 정리되면 좋겠다.
백링크를 달 때 이 글이 무엇이다, 명확해서 빠르게 캐치할 수 있으면 좋겠다.

해결해야 할 예시

브레인스토밍

지식과의 관계를 토대로 보는 토픽 분류

토픽으로 쓸 만한 패턴

지식은 원자적으로 두기?
상위 글로 비교를 묶는다?

한 문서의 참고

토픽 레벨 두기? - 결국 분류 아니냐 그리고 지식과의 관계는/
토픽 앞에 이니셜 붙이기?

이들을 정렬 편의성을 위해 enum으로 치환.
하나의 파일 속성으로 두고 정렬 수단으로 활용.
디렉토리도 분류.

글 쓰는 프로세스.

그냥 세팅 테스트이고 실험이어도 중요한 내용일 수 있다.

개선 방안

그렇다면 어떻게 바꾸는 것이 더 효과적일까?
아울러, 토픽을 어떻게 활용하는 것이 내 지식 정리에 더 도움이 될까?
image.png
토스의 문서 유형 정리 방식이 여기에 도움을 줄 수 있을 것 같다는 생각이 들었다.
사실 이걸 읽다가 현재 글들의 문제를 인식하게 됐는데, 고찰을 해보면서 개인적으로는 다른 방식으로 개선할 계획을 세우게 됐다.
이 유형은 독자의 관점을 중시한 방식이라고도 할 수 있다.
하지만 나는 글을 정리하는 입장이고 미래의 나 역시 독자이기는 하게지만 그럼에도 단순한 독자와는 거리가 멀다.

TOPIC 디렉토리 구조

처음 구상한 개선 방안은 디렉토리를 쪼개는 것이다.

기존과 마찬가지로, 특정 기술을 기준으로 두거나 도메인을 바탕으로 분류하지는 않는다.
내용 상의 분류는 태깅만으로 최대한 해결하는 기조를 유지한다.
어차피 관련 있는 내용이라면 백링크를 달게 되며, 지식 문서에서는 참조된 문서를 조회하여 토픽 디렉토리에 접근할 수도 있다.

실용적으로 고려하기

topic을 여러 개로 분할하는 아이디어는 좋다.
디렉토리를 나누는 것도 나쁘지는 않다.
그런데 이게 명확하게 나눠질 수 있게 글을 쓰는 것이 먼저 중요한 것 같다.

예를 들어보자.
이스티오의 운영 모범 사례를 정리해보자.

토픽을 쓰는 방식

토픽 중에는 knowledge에서 참고하는 것이 강력하게 권장되거나 긴밀하게 결합되는 노트가 있다.
반면 그냥 단순하게 테스트하거나 정리하는 용도 존재한다.
어떤 지식에는 핵심인데 다른 지식에는 핵심이 아닌 토픽도 있다.
두 곳에 전부 핵심인 토픽도 있나?

KNOWLEDGE 디렉토리 구조

이 디렉토리는 크게 달라지게 하고 싶지는 않다.
앞으로 추가될 문서가 문제지 현재까지는 아주 괜찮은 상태를 유지하고 있다고 생각한다.
처음에는 그냥 문서 정리하면서 분류가 애매해진 문서들은 TOPIC.TASKS로 뺄까도 생각해봤다.

그러나, 그러면 내가 그리도 극혐하는 쿠버네티스 문서와 다를 게 없어진다.
image.png
개념 정리에 들어가야 할 것 같은 수많은 내용이 Reference에 쳐박혀 있어 처음에 고통을 많이 받았다..
막상 보면 거의 실습에 가까운 정리가 돼있어 Tasks에 들어갈 것 같은 것들도 Reference에 들어가있는 등, 매번 보면서 느끼지만 분류가 불분명하다고 생각한다.

아무튼 현재 내린 결론은 개념적 지식을 전달하기 위한 문서는 역시 KNOWLEDGE에 위치하는 게 맞다는 것.
대신 예시와 실습을 곁들여야 효과적인 문서들이 무조건 있기 때문에, 이들은 TOPIC.PROOF 디렉토리를 활용하는 방향으로 생각을 잡았다.
이때 중요한 것은 지식 문서가 토픽 문서에 의존하지 않는다는 것이다.
지식 문서와 토픽 문서의 의미적 구분이 명확하기에 최소한 이 둘 간의 위계에는 예외가 없는 편이 좋다.

데이터뷰 개선

그렇다면 또 고민할 지점이 데이터뷰이다.
image.png
최근 들어 도입한 데이터뷰 조회 방식은 위와 같이 하위 문서와 관련 문서의 구분이다.
디렉토리가 구분돼있을 때 매우 효과적인 방식이라고 개인적으로 생각하고 있다.
여기에서 개선을 한다면 관련 문서를 다시 한번 세분화하거나, 정렬 기준만 바꾸는 것이다.

지식 문서는 토픽에 의존성을 가지지 않으면서도 효과적으로 연관되는 토픽을 제대로 보여주기 위한 방법이 필요하다.
topic.proof에 들어가는 문서의 경우 특히 그렇다.

관련 문서

이름 noteType created

참고


  1. https://technical-writing.dev/index.html ↩︎